home *** CD-ROM | disk | FTP | other *** search
/ BBS Toolkit / BBS Toolkit.iso / wildcat / chksec20.zip / CHECKSEC.DOC next >
Text File  |  1992-04-14  |  6KB  |  141 lines

  1.  
  2.                                                                  
  3.  This program compliments of:                      ╓┴╖           ╓┴╖
  4.                                                  / ║ ║           ║ ║ \
  5.    ╤╕           ╤╕       ╕         ╤╕╤╕╒╕       ┌─┬║┬║┬─┬─┬─┬─┬─┬║┬║┬─┐
  6.    ││           ││      │         │││││       ▀▀▀▀║▀║▀▀▀▀▀▀▀▀▀▀▀║▀║▀▀▀▀
  7.    ││ ╤╕ ╒╕ ╕ ╒ ╞╡ ╤╕ ╕ ╒╡ ╒╤ ╤╕   ╞╡╞╡╘╕          ╨ ╨           ╨ ╨
  8.    ││ │  ╒╡ │││ ││ │  │ ││ ││ ╞╛   ││││ │            FIDO 1:369/2
  9.    ╧╛ ╧  ╘╧ ╘╧╛ ╧╛ ╧  ╘ ╘╧ ╘╡ ╘╛   ╧╛╧╛╘╛          EchoNet 50:5305/2
  10.                             │                       OurNet 65:613/2
  11.      Fort Lauderdale, FL   ╘╛                        WDNet 145.00
  12.    (305) 523-1717 *HST/DS*
  13.  
  14.  
  15.                                 CheckSec v2.0
  16.                             (c) 1992 by Rich Waugh
  17.  
  18. PROBLEM: I run an adult game to which I do not wish to allow minor user
  19. access. Unfortunately, I have some minor users who have higher access than
  20. some adults. All my security levels, from new user to visiting SysOp to Paid
  21. Access are set up in parallel: one with adult access, the other without. The
  22. way I have it set up, non-adult access always ends in a 0, while adult access
  23. ends with a 5. For example, NEWUSER has menu access level 10, while NEWUSER-X
  24. (adult at the same level) has an access level of 15. Notice that a simple "if
  25. larger than" security level check will not work for me. I'd like to give
  26. access to level 25, but not to level 30. That is not possible with WildCat!,
  27. so I wrote this little utility.
  28.  
  29. CheckSec will check the user's AGE or SECURITY LEVEL and compare it to levels
  30. you have chosen and entered in a configuration file. If it finds a match, the
  31. program terminates normally with an errorlevel 0. If it does not find a
  32. match, it exits with errorlevel 1. You can trap this errorlevel in a batch
  33. file and determine what action to take depending on the result found.
  34.  
  35. CheckSec includes all the good CatPatch stuff, like chat, drop to DOS, timer,
  36. monitor detection, customized F Keys, user info, etc; it even supports locked
  37. DTE (up to 19200). CheckSec is compiled as a stand-alone program. You do not
  38. need Brun45 in your path.
  39.  
  40.       ╔════════════════════════════════════════════════════════════════╗
  41.       ║  NOTE! The security levels are passed to Door.Sys by the *Menu ║
  42.       ║  Access Level*, NOT the NAME of the security level, and the    ║
  43.       ║  Menu Access Level is what CheckSec checks.                    ║
  44.       ╚════════════════════════════════════════════════════════════════╝
  45.  
  46. Here's what's required: You must make a file named CheckSec.Cfg in the
  47. directory where you will run the program.
  48.  
  49.                     --------------------------------------
  50.  
  51.                          SETUP #1 (Checking Security)
  52.  
  53. EXAMPLE CheckSec.Cfg
  54.  
  55. DrawBridge BBS                 <── The name of your BBS
  56. Rich                           <── SysOp's first name
  57. Waugh                          <── SysOp's last name
  58. C:\Wc30\Wcwork\Node1\Door.Sys  <── Path to Door.Sys
  59. 19200                          <── Locked DTE rate (or NO)
  60. SECURITY                       <── If you want to check by Security Level
  61. 25                             ─┐
  62. 35                              │  The various MENU ACCESS LEVELS you want
  63. 45                              │  to allow access to the door. You may enter
  64. 55                              │  up to 100 levels, one per line.
  65. 65                             ─┘
  66.  
  67.                     --------------------------------------
  68.  
  69. Alternatively, if you don't care about Security Level access, you can
  70. configure CheckSec to check the user's age instead.
  71.  
  72.                         SETUP #2 (Checking User's Age)
  73.  
  74. EXAMPLE CheckSec.Cfg
  75.  
  76. DrawBridge BBS                 <── The name of your BBS
  77. Rich                           <── SysOp's first name
  78. Waugh                          <── SysOp's last name
  79. C:\Wc30\Wcwork\Node1\Door.Sys  <── Path to Door.Sys
  80. NO                             <── Locked DTE rate (or NO)
  81. AGE=21                         <── The minimum age you want to give access to
  82.  
  83.                     --------------------------------------
  84.  
  85. Whichever setup you choose, you must run CheckSec.Exe in your door batch
  86. file, prior to running the door itself, and trap the errorlevel result.
  87.  
  88. EXAMPLE DOORX.BAT
  89.  
  90. @Echo Off
  91. Cd \Doors\Fantasy
  92. CheckSec CheckSec.Cfg
  93. If ErrorLevel 1 Goto END
  94. Fantasy C:\Wc30\Wcwork\Node1\ /BDrawBridge /D /ORich_Waugh /P50 /M1
  95. :END
  96.  
  97. Notice that if CheckSec exits with errorlevel 1, we skip the door and simply
  98. return him back to the board. That's all there is to it.
  99.  
  100.                     --------------------------------------
  101.  
  102. I, for one, am sick and tired of people who solicit money for the dumb little
  103. doors/utilities we all find so indespensible, so this one's a freebie. It is
  104. fully functional and contains no time bombs. If you find it handy, give the
  105. DrawBridge a call and thank me. If you don't find it useful, I'll cheerfully
  106. refund double your money!
  107.  
  108.                                   Rich Waugh
  109.  
  110.                     --------------------------------------
  111.  
  112. Acknowledgements: CheckSec was written in Quick Basic 4.5 using Jim Brewer's
  113.                   CatPatch routines modified for WildCat! 3.x; with ASM
  114.                   routine for errorlevel exit by Dave Cleary.
  115.  
  116.                     --------------------------------------
  117.  
  118. History:
  119.  
  120. Version 2.0: Another bug fix. The Catpatch routines for setting baud rate were
  121.              incorrect if the cfg file did not specify a locked DTE. It should
  122.              work correctly now for those who have it set to "NO".
  123.  
  124. Versions 1.8 - 1.9: Mostly code clean-ups, some cosmetic changes. Not released.
  125.  
  126. Version 1.7: Found and squished a bug in the modification of CatPatch which was
  127.              causing dropped carrier - only if the user failed the test - maybe
  128.              I should have left that in! <grin>.
  129.  
  130. Versions 1.4 - 1.6: Mostly code clean-ups, some cosmetic changes.
  131.  
  132. Version 1.3: Added the comm routines so the remote user can see what's going
  133.              on!
  134.  
  135. Version 1.2: Added the age-checking routine.
  136.  
  137. Version 1.1: Cleaned up the code and added some color to the video output.
  138.  
  139. Version 1.0: Original release.
  140.  
  141.